package org.zhs.common.result;

/**
 * 枚举接口
 */
public interface CodeEnum {

    String getMessage();

    Integer getCode();

    /**
     * 自定义枚举code,message
     * ResultCodeEnum.CODE.set(int code,String message)
     *
     * @param code    code
     * @param message message
     * @return CodeEnum
     */
    CodeEnum set(int code, String message);

    /**
     * 变更指定枚举message
     * ResultCodeEnum.CODE.set(String message)
     *
     * @param message message
     * @return CodeEnum
     */
    CodeEnum set(String message);

    /**
     * 枚举参数用于格式化消息 采用String.format格式化
     * ResultCodeEnum.ERROR_PARAM.param("1","2","3")
     *
     * @param param 参数
     * @return CodeEnum
     */
    default CodeEnum param(Object... param){return null;}
}
